package com.rw.coco.api.data.persistence;

import com.rw.coco.api.data.model.GroupModel;

/**
 * 群组消息交互
 */
public interface GroupMapper {
    /**
     * 获取群组信息
     *
     * @param id 群组的ID
     */
    GroupModel getGroupOrPut(String id);

    /**
     * 操作群组是否进入黑名单
     *
     * @param id       群组ID
     * @param blackOff 是否黑名单
     */
    void blackOrWhiteGroup(String id, boolean blackOff);

    /**
     * 操作群开关是否开启
     *
     * @param id       群组ID
     * @param switchOn 是否开启
     */
    void groupSwitch(String id, boolean switchOn);

    /**
     * 操作群旁观开关
     *
     * @param id       群组ID
     * @param switchOn 群旁观开关会是否开启
     */
    void groupObSwitch(String id, boolean switchOn);
}
